ఈ సాధనం గురించి
XML ఫార్మాటింగ్ నెస్టెడ్ ఎలిమెంట్లను ఇండెంట్ చేస్తుంది కాబట్టి డాక్యుమెంట్ సోపానక్రమం కనిపిస్తుంది. కాంపాక్ట్ XML — ఒక లైన్లోని ప్రతిదీ — సాంకేతికంగా చెల్లుబాటు అయ్యేది మరియు ప్రసారానికి ఉపయోగపడుతుంది, కానీ మానవులకు చదవలేనిది. ఫార్మాట్ చేయబడిన XML మూలకాల మధ్య లైన్ బ్రేక్లను జోడిస్తుంది మరియు పిల్లలను వారి తల్లిదండ్రుల లోపల ఇండెంట్ చేస్తుంది, ఇది స్కాన్ చేయగలదు, డిఫబుల్ మరియు చేతితో సవరించగలిగేలా చేస్తుంది.
ఈ ఫార్మాటర్ DOMPparser ఉపయోగించి ఇన్పుట్ని అన్వయించి, బాగా-రూపొందించడాన్ని నిర్ధారించి, ఇండెంట్ అవుట్పుట్ను విడుదల చేయడానికి ఫలితంగా DOMని నడుస్తుంది. వ్యాఖ్యలు, ప్రాసెసింగ్ సూచనలు మరియు CDATA విభాగాలు భద్రపరచబడ్డాయి. స్వీయ-క్లోజింగ్ ట్యాగ్లు (పిల్లలు లేనివి) ఒకే లైన్లో కాంపాక్ట్గా ఉంచబడతాయి; పిల్లలతో ట్యాగ్లు పిల్లలు ఇండెంట్తో బహుళ పంక్తులలో విస్తరించి ఉంటాయి.
టూ-స్పేస్ ఇండెంటేషన్ అనేది డిఫాల్ట్, ఇది అత్యంత సాధారణ XML కన్వెన్షన్తో సరిపోతుంది. రీఫార్మాటింగ్ గురించి ఫార్మాటర్ సాంప్రదాయికమైనది: ఇప్పటికే ఉన్న నిర్మాణం భద్రపరచబడింది, మూలకాల మధ్య ఖాళీ స్థలం మాత్రమే మారుతుంది. ఫార్మాటింగ్కు ముందు మరియు తర్వాత ఏదైనా XML పార్సర్ ద్వారా డేటా రౌండ్-ట్రిప్లు ఒకేలా ఉంటాయి.
XMLని ఎందుకు ఫార్మాట్ చేయండి
కాంపాక్ట్ XML చదవలేనిది. SOAP ప్రతిస్పందనలు, RSS ఫీడ్లు మరియు అనేక కాన్ఫిగరేషన్ ఫైల్లు సాంకేతికంగా చెల్లుబాటు అయ్యేవి కానీ ఆచరణాత్మకంగా అపారదర్శకమైన సింగిల్-లైన్ XML వలె వస్తాయి. ఫార్మాటింగ్ డాక్యుమెంట్ నిర్మాణాన్ని వెల్లడిస్తుంది, నిర్దిష్ట అంశాలను గుర్తించడానికి మిమ్మల్ని అనుమతిస్తుంది మరియు సంస్కరణ నియంత్రణలో తేడాలను అర్థవంతంగా చేస్తుంది.
ఫార్మాటింగ్ చెల్లుబాటు తనిఖీగా కూడా పనిచేస్తుంది. ఫార్మాటింగ్ సమయంలో XML అన్వయించడంలో విఫలమైతే, దోష సందేశం సమస్యను గుర్తిస్తుంది — సాధారణంగా మూసివేయబడని ట్యాగ్లు, సరిపోలని మూలకం పేర్లు లేదా చెల్లని అక్షరాలు. కఠినమైన వినియోగదారునికి పంపే ముందు XML లోపాలను క్యాచ్ చేయడం డీబగ్గింగ్ సమయాన్ని ఆదా చేస్తుంది.
సాంకేతిక వివరాలు
DOMParser ఒక XML DOMని ఉత్పత్తి చేస్తుంది. ఫార్మాటర్ ట్రీ డెప్త్-ఫస్ట్ నడుస్తుంది, ఓపెనింగ్ ట్యాగ్లు, ఇండెంట్ పిల్లలు మరియు క్లోజింగ్ ట్యాగ్లను విడుదల చేస్తుంది. ఎలిమెంట్ గుణాలు ప్రారంభ ట్యాగ్లో భద్రపరచబడతాయి; ఆట్రిబ్యూట్ ఆర్డర్ మూలానికి సరిపోలుతుంది.
టెక్స్ట్ నోడ్ల లోపల ముఖ్యమైన వైట్స్పేస్ భద్రపరచబడింది — ఫార్మాటర్ కంటెంట్ వైట్స్పేస్ని సురక్షితంగా మార్చదు ఎందుకంటే అది అర్థవంతంగా ఉండవచ్చు (XML స్పేస్ ప్రిజర్వేషన్ నియమాలు స్కీమాలలో విభిన్నంగా ఉంటాయి). మూలకాల మధ్య ఖాళీ స్థలం మాత్రమే మారుతుంది.
స్వీయ-మూసివేసే అంశాలు (పిల్లలు లేరు) <tag attr="val"/>గా విడుదల చేస్తారు. కేవలం టెక్స్ట్ కంటెంట్ ఉన్న ఎలిమెంట్స్ <tag>text</tag>గా విడుదలవుతాయి. ఎలిమెంట్ చిల్డ్రన్తో కూడిన ఎలిమెంట్లు ఇండెంట్ చేసిన పిల్లలతో బహుళ లైన్లలో విడుదల చేస్తాయి. CDATA విభాగాలు, వ్యాఖ్యలు మరియు ప్రాసెసింగ్ సూచనలు వాటి అసలు డీలిమిటర్లు మరియు కంటెంట్తో విడుదలవుతాయి.
తరచుగా అడిగే ప్రశ్నలు
- ఇది ఏ XML లోపాలను గుర్తిస్తుంది?
- టూల్ అన్క్లోజ్డ్ ట్యాగ్లు, సరిపోలని ఓపెనింగ్/క్లోజింగ్ ట్యాగ్లు, చెల్లని క్యారెక్టర్ రిఫరెన్స్లు, మిస్ అయిన రూట్ ఎలిమెంట్లు, తప్పుగా రూపొందించిన గుణాలు మరియు ఎన్కోడింగ్ సమస్యలను గుర్తిస్తుంది. సమస్యలను గుర్తించడంలో మీకు సహాయపడటానికి ఎర్రర్ సందేశాలలో లైన్ నంబర్లు ఉంటాయి.
- ఫార్మాటింగ్ XML కంటెంట్ని మారుస్తుందా?
- ఫార్మాటింగ్ మూలకాల మధ్య వైట్స్పేస్ మరియు ఇండెంటేషన్ను మాత్రమే సర్దుబాటు చేస్తుంది. ఎలిమెంట్ కంటెంట్, అట్రిబ్యూట్లు, CDATA విభాగాలు మరియు ప్రాసెసింగ్ సూచనలు ఖచ్చితంగా నమోదు చేయబడినట్లుగా భద్రపరచబడతాయి.
- ఇది పెద్ద XML ఫైల్లను నిర్వహించగలదా?
- సాధనం బ్రౌజర్లో అనేక మెగాబైట్ల వరకు ఫైల్లను నిర్వహిస్తుంది. చాలా పెద్ద XML పత్రాల కోసం (50MB+), మెరుగైన పనితీరు కోసం xmllint వంటి కమాండ్-లైన్ సాధనాలను ఉపయోగించడాన్ని పరిగణించండి.
- ఇది XML నేమ్స్పేస్లకు మద్దతు ఇస్తుందా?
- అవును. ఫార్మాటర్ నేమ్స్పేస్ డిక్లరేషన్లు (xmlns), ప్రిఫిక్స్డ్ ఎలిమెంట్స్ మరియు డిఫాల్ట్ నేమ్స్పేస్లను సరిగ్గా నిర్వహిస్తుంది. నేమ్స్పేస్లు ఫార్మాట్ చేసిన అవుట్పుట్లో భద్రపరచబడతాయి.
- నేమ్స్పేస్లు భద్రపరచబడ్డాయా?
- అవును. xmlns మరియు xmlns: ఉపసర్గ లక్షణాలు మూలంలో కనిపించే మూలకాలపై భద్రపరచబడతాయి.
- నేను XMLని ఒకే పంక్తికి తగ్గించవచ్చా?
- కొన్ని XML ఫార్మాటర్లు సూక్ష్మీకరణను అందిస్తాయి. ఈ సాధనం ఫార్మాటింగ్పై దృష్టి పెడుతుంది; రెజెక్స్ లేదా డెడికేటెడ్ టూల్తో మూలకాల మధ్య ఖాళీ స్థలాన్ని తీసివేయడం ద్వారా మినిఫైడ్ XMLని ఉత్పత్తి చేయవచ్చు.
- నా XML సర్వర్కి అప్లోడ్ చేయబడిందా?
- లేదు. DOMPparser మీ బ్రౌజర్లో నడుస్తుంది; ఫార్మాట్ మీ బ్రౌజర్లో నడుస్తుంది.
- టెక్స్ట్ నోడ్ల లోపల వైట్స్పేస్ మారుతుందా?
- సంఖ్య. టెక్స్ట్-నోడ్ వైట్స్పేస్ భద్రపరచబడింది ఎందుకంటే XML స్పేస్-ప్రిజర్వేషన్ నియమాలు స్కీమా ద్వారా మారుతూ ఉంటాయి. ఫార్మాటర్ ఇంటర్-ఎలిమెంట్ వైట్స్పేస్ను మాత్రమే మారుస్తుంది.