XML 문서를 생성하고 있는데 주소 부분에 다음과 같은 조각이 있습니다:
<Address>15 Sample St
Example Bay
Some Country</Address>
이를 XHTML로 변환하기 위해 제가 사용하는 XSLT에는 문자열 내의 개행 문자를
태그로 변환하는 펑키한 재귀 템플릿이 있습니다.
이 모든 것이 정상적으로 작동하지만 XML 문서 내에서 줄 바꿈에 의존하는 것이 '나쁜 관행'으로 간주되나요? 그렇다면 대신 이렇게 하는 것이 권장되나요?
<Address><Line>15 Sample St</Line>
<Line>Example Bay</Line>
<Line>Some Country</Line></Address>
텍스트가 여러 줄일 수 있는 모든 곳을 그런 태그로 감싸는 것은 정말 어색할 것 같아서요.
진짜 문제는 대부분의 응용 프로그램은 사용자 상호 교환, XML 형식을 읽을 수 있는 모든 것을 출력입니다 XML 로 축소 및 그 공백을 고려해보십시오 지정값이 줄 바꿈 하나의 공간. Xslt 는 왜 당신 that& # 39 의 데이터를 통해 건너뛰려면 렌더링하려는 등 여러 비판을 받아왔다. &Quot 사용하여 br"; 태그 다시그것들을 크게 간편해집니다 변형.
또 다른 잠재적 문제는 이 경우 XML 문서에 열고 있는 XML 에디터 기능과 예쁜 인쇄하십시오. you& # 39, re 손실됩니다 줄바꿈을 그 가능성이 높다.
줄 바꿈 사용하는 경우, 추가, xml, 공간 = " preserve" 렉시한테서 smartupdate. 속성을 " address."; (Rec.601 할 수 있는 dtd 의 경우, 이 중 하나를 사용하여 you& # 39, re).
>. Take a xml 응용 프로그램에 자주 보인다. >. 카발리에 태도를 공백 >. 이 곳에 대한 규칙 때문에 >. 여기서 공백을 xml 문서를 >. 이러한 일이 가끔 열거하십시오 doesn& # 39, t >. 추가 또는 무료 애플리케이션 관리 >. 어떤 공백을 제거할 수 있다.
줄 바꿈 유지할 수 있게 블록을 몇 명이 CDATA 밝혔다. 이는 잘못된. CDATA 단면에는 처리될 수 있도록 그칠 줄 바꿈 없는 그들이 불지윽으로 , 변경하십시오 수정표시 문자 데이터 처리.
<Address>15 Sample St
Example Bay
Some Country</Address>
것과 같습니다.
<Address><![CDATA[15 Sample St
Example Bay
Some Country]]></Address>
다만 이 api 는 각기 다른 보고서를.
유일한 진짜 문제는 XML을 읽기 어렵게 만든다는 점이라고 생각합니다.
<Something>
<Contains>
<An>
<Address>15 Sample St
Example Bay
Some Country</Address>
</An>
</Contains>
</Something>
예쁜 XML이 문제가 되지 않는다면, 아마 작동하는 한 걱정하지 않을 것입니다. 예쁜 XML이 신경 쓰인다면 명시적 개행은 <br />
태그 또는 \n
으로 변환한 후 XML에 포함시킬 것입니다.
XML을 읽고 쓰는 방식에 따라 다릅니다.
XML이 자동으로 생성되는 경우, 즉 개행이나 명시적 \n 플래그가
로 파싱되는 경우라면 걱정할 필요가 없습니다. 입력에 다른 XML이 포함되어 있지 않을 가능성이 높으므로 XML을 전혀 건드리지 않는 것이 더 깔끔합니다.
태그를 수동으로 작업하는 경우에도 줄 바꿈만 사용하는 것이 더 깔끔합니다.
예외는 DOM을 사용하여 XML에서 일부 구조를 가져오는 경우입니다. 이 경우 줄 바꿈은 계층 구조를 제대로 나타내지 못하기 때문에 분명히 악입니다. 하지만 계층 구조가 애플리케이션과 관련이 없는 것처럼 들리므로 줄 바꿈으로 충분합니다.
XML이 보기에 좋지 않은 경우(특히 자동으로 생성된 경우), Tidy가 도움이 될 수 있지만, 이 도구는 XML보다 HTML에서 더 잘 작동합니다.
Xml 세부 항목에 대해 하고 싶은 얘기가 말하도다 [공백] [1] 및 [linefeed 및 캐리지 리턴 특히] [2]. 네가 만일 제한값 (true 로 교도관님도요 linefeed 확인을 합니다. (하지만) 많은 편집 도구 (x0A) 는 XML 의 더 나은 presentation" 재적용됩니다 "; 이 특수한 구문을 없앨 수 있습니다. 보다 더 강력한, 청정 외곽진입 " <; line> <; / line> "; 아이디어 및 embed XHTML 컨텐트에서 약간만이라도 단순히 네임스페이스을 사용 예:
<Address xmlns="http://www.w3.org/1999/xhtml">15 Sample St<br />Example Bay<br />Some Country</Address>
표준 단어장 측면에서 볼 때, 모든 것을 직접 개발할 필요는 없습니다.
[1]: http://www.w3.org/TR/xml/ # 초 공백 [2]: http://www.w3.org/TR/xml/ # 삼성전자는 motor1.1end 선
이것은 아마도 이 사건 이후 주소는 조금 기만적 acrobatconnectcentral. 조금 비 정규화된. 그러나 이후 상관 관계를 정상화하는 것이 합리적인 주소 필드 어렵습니다.
일반적으로 이 있지만, 이 경우 큰 문제가 없을 것이라고 말하고 싶습니다 어떻게 줄 수 있는 가장 정확한 태그번호 때문에, 실제로 어떻게 해석할 수 없는 명시적으로 fs@snapa don& # 39 의 흐름선 짓궂군요 다른 문화권. (즉, 대부분의 양식을 주소가 우편번호, 주소 입력 등 1 호선과 2.)
이 선은 보통 XML, 그동안 함께 있기 때문에 많은 논쟁을 알아차릴 태그번호 그때그들은 http://support. 코딩 호러. http://www.codinghorror.com/blog/archives/001139.html
내가 don& # 39, t, s # 39 을 (를) ',' line> what& 지켜보리니 <, 잘못된 것이다. 언뜻 보면, 데이터 시각화 여러분에게 중요한 의미를 갖는 만큼 중요한 유지하기 위해 고객의 데이터 (줄 바꿈) 를 통해 자신의 첫 번째 사례). 괜찮아요. 그럼 정말 렉시한테서 해버린다는거, don& # 39, t, magic" " 의존하고 있습니다. 유지하기 위해 당신꺼에요. # 39 의 및 can& 나중에 필요한 모든 데이터를 계속 약어입니다 you&, ll, t # 39 에서 저장된 데이터 부분을 완벽하게 추론, 계속 해도 it& # 39 의 데이터 시각화 (줄바꿈 및 기타 서식). 사용자 (최종 사용자 다른 개발자) 가 그의 대로 해당 데이터를 포맷하십시오 시간 - 이거 녹음되는거지 인컨텍스트 API (doc 근처에 / 문자 입력) 를 don& # 39, t, 또는 - 그냥 계속 유지하는 것이 정보기술 (it) 에 있는 것이 특징이다.
줄 바꿈 사용할 경우, 이를 [트와이크트 기도하였나니] (need your 아니했으니 CDATA 블록, https://stackoverflow.com/questions/7277/is-it-bad-practice-to-be-sensitive-to-linebreaks-in-xml-documents # 7280)
그렇지 않으면 조심하시오. 대부분의 경우 줄 바꿈 보존되는 소프트웨어, 단, t, 때로는 won& # 39 에서 XML, you really want to be 도움 t # 39 don& 것들로 우연히 사용할 수 있습니다.